<template>
  <view class="noticeLayout">
    <view class="title">
      <view class="tag" v-if="wallNewsDetail?.select">
        <uni-tag inverted text="置顶" type="error" />
      </view>
      <view class="font">{{ wallNewsDetail?.title }}</view>
    </view>

    <view class="info">
      <view class="item">{{ wallNewsDetail?.author }}</view>
      <view class="item">
        <uni-dateformat :date="wallNewsDetail?.publish_date" format="yyyy-MM-dd hh:mm:ss"></uni-dateformat>
      </view>
    </view>


    <view class="content">
      <mp-html :content="wallNewsDetail?.content || ''" />
      <!-- <rich-text :nodes="wallNewsDetail?.content || ''"></rich-text> -->
    </view>

    <view class="count">
      阅读 {{ wallNewsDetail?.view_count }}
    </view>
  </view>
</template>

<script setup lang="ts">
import { ref } from "vue";
import { onLoad } from '@dcloudio/uni-app';
import type { WallNewsDetail } from '@/api/notice';
import { apiWallNewsDetail } from "@/api/notice";
import mpHtml from 'mp-html/dist/uni-app/components/mp-html/mp-html'
const wallNewsDetail = ref<WallNewsDetail>()

const getWallNewsDetail = async (id: string) => {
  const res = await apiWallNewsDetail({ id })
  wallNewsDetail.value = res.data
}

onLoad(({ id, name }: { id: string; name?: string }) => {
  if (name) {
    uni.setNavigationBarTitle({
      title: name
    })
  }
  getWallNewsDetail(id)
})
</script>

<style lang="scss" scoped>
.noticeLayout {
  padding: 30rpx;

  .title {
    font-size: 40rpx;
    color: #111;
    line-height: 1.6em;
    padding-bottom: 30rpx;
    display: flex;

    .tag {
      transform: scale(0.8);
      transform-origin: left center;
      flex-shrink: 0;
    }

    .font {
      padding-left: 6rpx;
    }
  }

  .info {
    display: flex;
    align-items: center;
    color: #999;
    font-size: 28rpx;

    .item {
      padding-right: 20rpx;
    }
  }

  .content {
    padding: 50rpx 0;
  }

  .count {
    color: #999;
    font-size: 28rpx;
  }
}
</style>
